1. Field of the Invention
This invention relates to a motion editing apparatus and a motion editing method for supporting the creation and the editing of motions, stating a predetermined movement pattern of a robot, and to a computer program. This invention especially relates to a motion editing apparatus and a motion editing method for a legged mobile robot for doing various tasks by movable legs, and to a computer program.
More particularly, the present invention relates to a motion editing apparatus and a motion editing method for supporting the editing of a movement pattern, as feasibility of the movement pattern on an actual robot is scrutinized, and to a computer program. More specifically, the invention relates to a motion editing apparatus and a motion editing method for a legged mobile robot in which the motion as edited is checked on the actual robot, and a computer program.
The application claims priority of Japanese Patent Application No. 2002-298348 filed on Oct. 11, 2002, the entirety of which is incorporated by reference herein.
2. Description of Related Art
A mechanical apparatus for performing movements simulating the movements of the human being, with the use of electrical or magnetic movements, is termed a “robot”. The etymology of the term robot is said to be “ROBOTA” (slave machine) of the Slavic language. In Japan, the robots started to be used towards the end of the 1960s. Most of these robots used were industrial robots, such as manipulators or transporting robots, aimed to automate or perform unmanned tasks in plant movements.
In recent years, researches and developments in legged mobile robots, simulating the bodily mechanism and movements of an animal which is erected and walks on two feet, such as human beings or monkeys, are progressing, such that there are good prospects for practical utilization of this robot type. The movement system by legs, erected and walking on two legs, is labile as compared to the crawler type system or the system walking on four or six legs, and hence is difficult to control as to posture or walking. However, the movement system by legs, erected and walking on two legs, is favorable in such respects that it is able to cope with a work route presenting an irregular walking surface, such as non-leveled terrain or obstacles, or a non-continuous walking surface, such as staircase or ladder, thereby achieving more flexible movements.
On the other hand, the legged mobile robot, regenerating the mechanism of the living body or movements of the human beings, is termed a “humanoid” or a “humanoid robot”. The humanoid robot is able to support the human life, that is to support human activities, in various aspects of our everyday life, such as in our living environments.
The major portions of the task space or the living space of the human beings are tailored to the bodily mechanism and the behavior patterns of the human beings, which are erect and walk on two feet, while presenting many obstacles to movements of the state-of-the-art mechanical system, having wheeled driving device or the like as movement means. Thus, in order for the mechanical system, that is, the robot, to take the place of the human beings in a large variety of tasks and to adapt itself to the living environment of the human beings, it is desirable that the possible range of movement of the robot is substantially the same as that of the human beings. This accounts for great general expectations for practical utilization of legged mobile robots.
The up-to-date legged mobile robot has a high information processing capability, such that the robot itself may be comprehended as a sort of the computer system. Stated differently, the highly advanced complicated sequence of movements, or motions, constructed by movement patterns, realized on a robot, or by a combination of plural fundamental movement patterns, are constructed by a movement similar to computer programming.
In order for the robot body to come into widespread use, it is imperative that a large number of motion data for actuating the robot body become practically usable. Thus, it is strongly desired to construct a development environment for enabling motion editing for robots.
It may also be anticipated that the robot will be widely used in the near future not only in industry but also in households and in our everyday life. In particular, as to an entertainment-oriented product, it may be anticipated that general consumers at large, not having specialized knowledge about computers or computer programming, purchase and use robots. For the general consumers at large, it would be desirable to provide a tool which will support them in formulating and editing the robot's movement sequence by interactive processing, that is, a motion editing system efficiently and with relative ease.
The robot is constructed by a plural number of control points, such as joints, so that, by sequentially inputting the positions or velocities (joint angles or angular accelerations) at respective control points, it is possible to edit the movements of the robot body. In this respect, the movement of such formulation and editing may be likened to the generation of character animation in computer graphics. However, there is an explicit difference between the movement in a virtual space and those of an actual apparatus (robot). In the case of the legged mobile robot, desired movements cannot be executed by simply actuating the angles of joints, such that the movements on legs need to be continued without falldown of the robot. In other words, in order to realize a desired movement, it is imperative that the movements realized on the actual robot are checked and stability in posture of the robot body is maintained in the course of the motion execution.
In controlling posture stability of the legged mobile robot, a ZMP stability decision criterium of searching for a zero moment point on or inwardly of a side of a supporting polygon, formed by the for sole touchdown point and the road surface, is used. In the case of the two-legged mobile robot, this supporting polygon is of a marked height, as a result of which it is retained to be difficult to control the posture of the robot in stability.
There has already been known a motion editing system in which command values in each control point of the robot body is entered on a display to help implement the robot's motion. However, there lacks up to now a system in which posture stability in case of realizing the edited motion is checked on the actual robot or in which the desired motion is corrected for stabilizing the posture. In fact, motion edition would be a failure if the posture stability of the robot body cannot be maintained with the implemented motion, such that the motion itself cannot be put into practice.